package com.gwcloud.leetcode.interview100;

import com.gwcloud.leetcode.common.datastructure.TreeNode;

/** 
* @ClassName   : Leetcode0108 
* @author      : ganwei 
* @date        : 2020年5月26日 
* @Description : 108. 将有序数组转换为二叉搜索树 
*/
public class Leetcode0108 {
    
	/**
	 * -解题思路，
	 */
	public TreeNode sortedArrayToBST(int[] nums) {
		
    	return sortedArrayToBST(nums, 0, nums.length);
    }
	
	/**
	 * -递归建树
	 */
	public TreeNode sortedArrayToBST(int[] nums, int start, int end) {
		if(start == end) {
			return null;
		}
		int mid = start + (end - start) / 2;
		TreeNode root = new TreeNode(nums[mid]);
		root.left = sortedArrayToBST(nums, start, mid);
		root.right = sortedArrayToBST(nums, mid+1, end);
		return root;
	}
	
	/**
	 * 
	 */
	public static void main(String[] args) {
		
	}
}
